package 程序员面试金典;

import org.junit.Test;

import java.util.Arrays;
import java.util.LinkedList;

public class 部分排序 {

    //我写的
    public int[] subSort(int[] array) {
        int[] ints=array.clone();
        Arrays.sort(array);
        int start=-1,end=-1;
        for (int i = 0; i < array.length; i++) {
            if ( ints[i]!=array[i]){
                start=i;
                break;
            }
        }
        for (int i = array.length-1; i >=0 ; i--) {
            if ( ints[i]!=array[i]){
                end=i;
                break;
            }
        }
        return new int[]{start,end};
    }
    //别人写的
//    public int[] subSort(int[] array) {
//        int[] clone = array.clone();
//        Arrays.sort(clone);
//        int left = -1;
//        int right = -1;
//        for (int i = 0; i < array.length; i++) {
//            if (array[i] != clone[i]) {
//                if (left == -1) {
//                    left = i;
//                }
//                right = i;
//            }
//        }
//        return new int[]{left, right};
//    }
    @Test
    public void test(){
        int[] array={3,2,1};
        Arrays.sort(array);
    }
}
